{\rtf1\adeflang1025\ansi\ansicpg10000\uc1\adeff0\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\upr{\fonttbl{\f0\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f2\fbidi \fnil\fcharset0\fprq2{\*\panose 02070309020205020404}Courier New;}{\f3\fbidi \fnil\fcharset2\fprq2{\*\panose 02000500000000000000}Symbol;}{\f42\fbidi \fnil\fcharset0\fprq2{\*\panose 02000000000000000000}Apple Symbols;}{\flomajor\f31500\fbidi \fnil\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}{\fdbmajor\f31501\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhimajor\f31502\fbidi \fnil\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbimajor\f31503\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbminor\f31505\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhiminor\f31506\fbidi \fnil\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;}{\fbiminor\f31507\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}}{\*\ud{\fonttbl{\f0\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f2\fbidi \fnil\fcharset0\fprq2{\*\panose 02070309020205020404}Courier New;}{\f3\fbidi \fnil\fcharset2\fprq2{\*\panose 02000500000000000000}Symbol;}{\f42\fbidi \fnil\fcharset0\fprq2{\*\panose 02000000000000000000}Apple Symbols;}{\flomajor\f31500\fbidi \fnil\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}{\fdbmajor\f31501\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhimajor\f31502\fbidi \fnil\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbimajor\f31503\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbminor\f31505\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhiminor\f31506\fbidi \fnil\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;}{\fbiminor\f31507\fbidi \fnil\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}}}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\*\defchp }{\*\defpap \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\qj \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \snext0 Normal;}{\s1\ql \li0\ri0\sb240\sa120\keepn\nowidctlpar\wrapdefault\faauto\outlinelevel0\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs40 \ltrch\fcs0 \b\fs40\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 \slink16 heading 1;}{\s2\ql \li0\ri0\sb240\sa120\keepn\nowidctlpar\wrapdefault\faauto\outlinelevel1\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 \slink17 heading 2;}{\s3\ql \li0\ri0\sb240\sa120\keepn\nowidctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 \slink18 heading 3;}{\s4\ql \li0\ri0\sb240\sa120\keepn\nowidctlpar\wrapdefault\faauto\outlinelevel3\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs24 \ltrch\fcs0 \b\fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 \slink19 heading 4;}{\s5\ql \li0\ri0\sb240\sa120\keepn\nowidctlpar\wrapdefault\faauto\outlinelevel4\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs24 \ltrch\fcs0 \b\fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 \slink20 heading 5;}{\s6\ql \li0\ri0\sb240\sa120\keepn\nowidctlpar\wrapdefault\faauto\outlinelevel5\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs24 \ltrch\fcs0 \b\fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 \slink21 heading 6;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\*\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1033 \ltrch\fcs0 \fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden Normal Table;}{\s15\qc \li0\ri0\sb240\sa120\keepn\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs40 \ltrch\fcs0 \b\fs40\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 Part;}{\*\cs16 \additive \rtlch\fcs1 \ab\af31503\alang1024 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\kerning32\loch\f31502\hich\af31502\dbch\af31501\noproof \sbasedon10 \slink1 \slocked Heading 1 Char;}{\*\cs17 \additive \rtlch\fcs1 \ab\ai\af31503\alang1024 \ltrch\fcs0 \b\i\fs28\lang1024\langfe1024\loch\f31502\hich\af31502\dbch\af31501\noproof \sbasedon10 \slink2 \slocked \ssemihidden Heading 2 Char;}{\*\cs18 \additive \rtlch\fcs1 \ab\af31503\alang1024 \ltrch\fcs0 \b\fs26\lang1024\langfe1024\loch\f31502\hich\af31502\dbch\af31501\noproof \sbasedon10 \slink3 \slocked \ssemihidden Heading 3 Char;}{\*\cs19 \additive \rtlch\fcs1 \ab\af31507\alang1024 \ltrch\fcs0 \b\fs28\lang1024\langfe1024\loch\f31506\hich\af31506\dbch\af31505\noproof \sbasedon10 \slink4 \slocked \ssemihidden Heading 4 Char;}{\*\cs20 \additive \rtlch\fcs1 \ab\ai\af31507\alang1024 \ltrch\fcs0 \b\i\fs26\lang1024\langfe1024\loch\f31506\hich\af31506\dbch\af31505\noproof \sbasedon10 \slink5 \slocked \ssemihidden Heading 5 Char;}{\*\cs21 \additive \rtlch\fcs1 \ab\af31507\alang1024 \ltrch\fcs0 \b\fs22\lang1024\langfe1024\loch\f31506\hich\af31506\dbch\af31505\noproof \sbasedon10 \slink6 \slocked \ssemihidden Heading 6 Char;}{\s22\qr \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext22 rightpar;}{\s23\qc \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext23 centerpar;}{\s24\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 equation;}{\s25\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 equationNum;}{\s26\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 equationAlign;}{\s27\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 equationAlignNum;}{\s28\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 equationArray;}{\s29\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 equationArrayNum;}{\s30\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 theorem;}{\s31\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 bitmapCenter;}{\s32\qc \li0\ri0\sb240\sa240\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs36 \ltrch\fcs0 \b\fs36\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext34 \slink33 Title;}{\*\cs33 \additive \rtlch\fcs1 \ab\af31503\alang1024 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\kerning28\loch\f31502\hich\af31502\dbch\af31501\noproof \sbasedon10 \slink32 \slocked Title Char;}{\s34\qc \li0\ri0\sa120\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 author;}{\s35\ql \li0\ri0\nowidctlpar\tqc\tx4536\tqr\tx9072\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext35 \slink36 footer;}{\*\cs36 \additive \rtlch\fcs1 \af0\alang1024 \ltrch\fcs0 \lang1024\langfe1024\noproof \sbasedon10 \slink35 \slocked \ssemihidden Footer Char;}{\s37\ql \li0\ri0\nowidctlpar\tqc\tx4536\tqr\tx9072\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext37 \slink38 header;}{\*\cs38 \additive \rtlch\fcs1 \af0\alang1024 \ltrch\fcs0 \lang1024\langfe1024\noproof \sbasedon10 \slink37 \slocked \ssemihidden Header Char;}{\s39\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 caption;}{\s40\qc \li0\ri0\sb120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 Figure;}{\s41\qc \li0\ri0\sb120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext41 Table;}{\s42\qc \li0\ri0\sb120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext42 Tabular;}{\s43\qc \li0\ri0\sb120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext43 Tabbing;}{\s44\qj \fi340\li1024\ri1024\widctlpar\wrapdefault\faauto\rin1024\lin1024\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext44 \slink45 Quote;}{\*\cs45 \additive \rtlch\fcs1 \af0\alang1024 \ltrch\fcs0 \lang1024\langfe1024\noproof \sbasedon10 \slink44 \slocked Quote Char;}{\s46\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af2\afs20 \ltrch\fcs0 \f2\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \snext46 verbatim;}{\s47\ql \fi-283\li283\ri0\sa120\widctlpar\tx283\wrapdefault\faauto\rin0\lin283\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext47 List;}{\s48\ql \fi-283\li283\ri0\sa120\widctlpar\tx283\wrapdefault\faauto\rin0\lin283\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext48 List 1;}{\s49\qc \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 latex picture;}{\s50\qc \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 subfigure;}{\s51\ql \li0\ri0\sb240\sa120\keepn\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext52 bibheading;}{\s52\ql \fi-567\li567\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin567\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext52 bibitem;}{\s53\ql \fi-283\li283\ri0\sa120\widctlpar\tx283\wrapdefault\faauto\rin0\lin283\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext53 endnotes;}{\s54\ql \fi-113\li397\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin397\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext54 \slink55 footnote text;}{\*\cs55 \additive \rtlch\fcs1 \af0\alang1024 \ltrch\fcs0 \fs24\lang1024\langfe1024\noproof \sbasedon10 \slink54 \slocked \ssemihidden Footnote Text Char;}{\s56\qj \fi-170\li454\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin454\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext56 \slink57 endnote text;}{\*\cs57 \additive \rtlch\fcs1 \af0\alang1024 \ltrch\fcs0 \fs24\lang1024\langfe1024\noproof \sbasedon10 \slink56 \slocked \ssemihidden Endnote Text Char;}{\*\cs58 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \super \sbasedon10 \ssemihidden footnote reference;}{\*\cs59 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \super \sbasedon10 endnote reference;}{\s60\ql \li0\ri0\sb60\sa60\keepn\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext60 acronym;}{\s61\qc \li0\ri0\sa120\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs20 \ltrch\fcs0 \b\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext62 abstract title;}{\s62\qj \fi340\li1024\ri1024\widctlpar\wrapdefault\faauto\rin1024\lin1024\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 abstract;}{\s63\ql \li0\ri0\sb240\sa120\keepn\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs20 \ltrch\fcs0 \b\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 contents_heading;}{\s64\ql \li425\ri0\sb240\sa60\keepn\nowidctlpar\tqr\tldot\tx8222\wrapdefault\faauto\rin0\lin425\itap0 \rtlch\fcs1 \ab\af0\afs20 \ltrch\fcs0 \b\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext65 toc 1;}{\s65\ql \li512\ri0\sb60\sa60\keepn\nowidctlpar\tqr\tldot\tx8222\wrapdefault\faauto\rin0\lin512\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext66 toc 2;}{\s66\ql \li1024\ri0\sb60\sa60\keepn\nowidctlpar\tqr\tldot\tx8222\wrapdefault\faauto\rin0\lin1024\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext67 toc 3;}{\s67\ql \li1536\ri0\sb60\sa60\keepn\nowidctlpar\tqr\tldot\tx8222\wrapdefault\faauto\rin0\lin1536\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext68 toc 4;}{\s68\ql \li2048\ri0\sb60\sa60\keepn\nowidctlpar\tqr\tldot\tx8222\wrapdefault\faauto\rin0\lin2048\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext69 toc 5;}{\s69\ql \li2560\ri0\sb60\sa60\keepn\nowidctlpar\tqr\tldot\tx8222\wrapdefault\faauto\rin0\lin2560\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext69 toc 6;}}{\*\revtbl {Unknown;}}{\*\rsidtbl \rsid1709759\rsid5392996\rsid9316407\rsid10307422\rsid12788530}{\mmathPr\mmathFont0\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef0\mlMargin0\mrMargin0\mwrapRight0\mintLim0\mnaryLim0}{\info{\title Original file was paper.tex}{\doccomm Created using latex2rtf 2.3.3 r1230 (released Feb 26, 2013) on Fri May  3 15:44:15 2013}{\operator Samur Araujo}{\creatim\yr2013\mo5\dy3\hr15\min45}{\revtim\yr2013\mo5\dy3\hr17\min30}{\version5}{\edmins2}{\nofpages10}{\nofwords4132}{\nofchars23557}{\nofcharsws28929}{\vern33163}{\*\saveprevpict}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw12280\paperh15900\margl2680\margr2700\margt2540\margb1760\gutter0\ltrsect \ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata1\grfdocevents0\validatexml0\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors0\aftnnar\horzdoc\dghspace120\dgvspace120\dghorigin1701\dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind1\viewscale150\rsidroot1709759 \fet0{\*\wgrffmtfilter 013f}\ilfomacatclnup0{\*\ftnsep \ltrpar \pard\plain \ltrpar\qj \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \chftnsep \par }}{\*\ftnsepc \ltrpar \pard\plain \ltrpar\qj \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \chftnsepc \par }}{\*\aftnsep \ltrpar \pard\plain \ltrpar\qj \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \chftnsep \par }}{\*\aftnsepc \ltrpar \pard\plain \ltrpar\qj \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \chftnsepc \par }}\ltrpar \sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\footerr \ltrpar \pard\plain \ltrpar\qc \li0\ri0\nowidctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \chpgn \par }}{\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\s2\ql \li0\ri0\sb240\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel1\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 {\*\bkmkstart BMsec_algorithm}3{\*\bkmkend BMsec_algorithm}  Rule Learner Algorithm\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 This section describes our algorithm to produce a transformation rule }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ \u936\'5f\\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  from (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ).\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb120\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 3.1  Rule Learning\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 The algorithm is composed of 4 parts: permutation, insertion, deletion and updated rule learner. Intuitively, the algorithm learns a possible permutations in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , then on the permuted string }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  it identifies insertions and deletions to transform it to }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 _}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , such that }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ |}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 _}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )|=|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 |}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  ; and finally, in the resultant string }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 _}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , it learns character replacements to transform }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 _}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  into }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 .\par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Firstly, we describe the algorithm to find a relative position in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , which used in the string operations. \par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb120\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 {\*\bkmkstart BMalg_relativeposition}3.2{\*\bkmkend BMalg_relativeposition}  Relative Position Algorithm\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 To obtain a relative position }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 R}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 k}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  of }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] in the string }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , the Alg. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMalg_relativeposition \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 1}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is used. The purpose of the algorithm is to select the most general relative position as possible, i.e., the one that can possible represent the same absolute position over a set of similar strings. Practically, the most general relative position is also the most discriminative one, with the smaller offset }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . In other words, this position has }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that is the least frequent in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that is the closest one to the absolute position }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 .\par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 In order to compute the relative position }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 R}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 k}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  of a position }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  of }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , all substrings }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  have to be considered. Let }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 E}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  be the set of all n-grams of }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , i.e.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \charscalex50\insrsid10307422 \~}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 E}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=\{}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )|}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8704\'00}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,0<}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 <|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )|\u8722\'5f}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 :}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ..}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 +}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]\}}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , where }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ 1\u8804\'b2}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u8804\'b2|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )|}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . And let }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 x}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ) be a function that gives the frequency of a substring }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 x}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ; then, for a specific }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8712\'08}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 E}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 k}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ). \par For example, consider the string }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ="Noia, La". Assume }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 E}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  as the set of bigrams of }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 zulllpsulz}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , i.e.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \charscalex50\insrsid10307422 \~}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 E}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=\{}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 zu\\,ul\\,ll\\,ll\\,lp\\,ps\\,su\\,ul\\,lz}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \}}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . The frequency of each distinct character }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 a}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8712\'08}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=2, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 l}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=4, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=1 and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=1. Particularly, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 z}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=0, by definition. While the frequency of each bigram in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 E}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is: }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 zu}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=1, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ul}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=2, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ll}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=2, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 lp}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=1, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ps}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=1, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 su}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=1 and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 lz}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=1. \par The most discriminative }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8712\'08}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 E}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is the one with the smallest }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 k}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  (frequency) and smallest absolute distance }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  to }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . This discriminative score can be computed by calculating the average frequency of the characters in a substring }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 w}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that starts in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and ends in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , (or vice-versa, if }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 <}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ). \par Suppose that the position }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =7, in the previous example }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[7]=}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 u}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . For the first bigram }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 1}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 zu}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , the substring }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 w}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs13\insrsid10307422 1}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  would be }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 w}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 zu}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 zulllpsu}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , and for the bigram }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 7}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 lz}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 w}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 lz}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ulz}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 .\par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid10307422 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 The best }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  will be the one with the smallest average frequency in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 w}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . It is obtained by solving the minimization described in Eq. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMeq_relative \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 3}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 :}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 where }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 w}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )|}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 a}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is a character in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 w}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 g}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 a}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )= \\F(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 a}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ),|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )|)}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Notice that }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Mean}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ) is the generalized mean over the frequency }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 a}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ) of character }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 a}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Intuitively, the generalized mean gives a higher score to longer strings }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 w}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , i.e., }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that are far from }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Consequently, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that are closer to the }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] will have a smaller score. The root in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ) is used to increase the score of }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that are more frequent. Therefore, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that are less frequent in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and closer to }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] will be selected.\par In the current example, as }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ |}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )|=10}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , we obtain the following score }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ) for each }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8712\'08}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 E}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 : }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 zu}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=0.353, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ul}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=0.354, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ll}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=0.356,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ll}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=0.578, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 lp}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=0.287, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ps}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=0.149, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 su}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=0.158, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ll}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=0.562 and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 lz}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=0.288. }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 F}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ps}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=0.149 is the smallest score, therefore, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ps}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is selected. Then, the relative position for }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =7 is defined as }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 R}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(1\\,}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ps}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,1)}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . \par }\pard \ltrpar\qc \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [Sorry. Ignored }{\rtlch\fcs1 \af2 \ltrch\fcs0 \f2\fs24\insrsid10307422 \\begin\{algorithm\} ... \\end\{algorithm\}}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]\par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 This algorithm is bound by }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 O}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 |\\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ))}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  for }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =1, and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 O}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (1) for }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 |. We observed empirically that this algorithm produces the most discriminative relative position when }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =2. Notice that for }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 |, }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 R}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 k}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , i.e. }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is the value of the absolute position }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 .\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb120\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 {\*\bkmkstart BMalg_bubble}3.3{\*\bkmkend BMalg_bubble}  Permutation Rule Learner\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 To learn permutations in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , we have to select among all permutations of tokens in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  (separated by a character }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ), the permutation that is closer to the target string }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . As we do not know the separator }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  in advance, all characters in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  should be considered. So, to learn permutations in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  (delimiters are ignored), for each distinct character }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , we build a set of tokens }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=\{}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 1}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,\u8230\'c9\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\}}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , where }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 1}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )+}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 +\u8230\'c9+}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 +}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Then, assuming }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  to be the set of all }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ! permutations of tokens in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , where }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )|}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . From the union }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =}{\rtlch\fcs1 \af42 \ltrch\fcs0 \f42\insrsid10307422 \u8898\'5f}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\fs16\insrsid10307422 \u8712\'08}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , we select the permutation }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8712\'08}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Q}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that generate a string }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  with the highest similarity to }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , i.e. we solve the problem:\par }\pard\plain \ltrpar\s25\ql \li0\ri0\sb120\sa120\keep\widctlpar\tqc\tx3450\tqr\tx6900\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \tab }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \tab ({\*\bkmkstart BMeq_permutation}6{\*\bkmkend BMeq_permutation})\par }\pard\plain \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 The well-known }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 levenstein edit-distance}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is used as }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 sim}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8901\'c5}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ,}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8901\'c5}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ). \par For example, for the transformation }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 John}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 M}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Lewis}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u8594\'5f}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 John}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Lewis}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 M}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ., considering }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =" "(space), }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=\{"John"}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , "M.", "Lewis"\} and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=\{\{"John"\\, "M."\\, "Lewis"\}}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , \{"John",  "Lewis", "M."\}, \{"M.", "John", "Lewis"\}, \{"M.", "Lewis",  "John"\}, \{"Lewis", "John", "M."\}, \{"Lewis", "M.",  "John"\}\}. Among all possible }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , the permutation }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=\{"John"\\, "Lewis"\\, "M."\}}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , which forms the string "Jackson Michael J." has the highest similarity to target string. Notice that the set }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  would be the union of sets }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , where }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  would be any of the character \{"J", "o", "h", "n", " ", "M", ".", "L", "e", "w", "i", "s"\}.\par The generation of all permutations of }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  becomes prohibitive when }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  has too many tokens. As we do not need to list all permutations but only to find the best one, the best permutation of }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is found by sorting the tokens in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , using }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 sim}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  as a criteria of ordering the tokens. The Alg. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMalg_bubble \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 2}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  describe this sorting process. \par Starting from a set of tokens }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=\{}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 1}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,\u8230\'c9\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\}}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , a slightly modified version of }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 bubblesort}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cs58\super\insrsid10307422\charrsid9316407 \chftn {\footnote \ltrpar \pard\plain \ltrpar\s54\ql \fi-113\li397\ri0\widctlpar\wrapdefault\faauto\rin0\lin397\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \cs58\super\insrsid10307422\charrsid9316407 \chftn }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  Any sorting algorithm can be used to sort the tokens. We used bubblesort because in this problem the set of tokens are relative small and it performs satisfactorily.}}}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is used to sort the tokens, where }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 sim}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is the criteria of ordering and an auxiliary list of already tried permutations is used to avoid the algorithm to enter in an infinity loop. Basically, in this algorithm two tokens }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 a}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 b}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  are permuted if }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 sim}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\u8805\'b3}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 sim}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 w}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , where }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 1}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\u8230\'c9}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 a}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u8230\'c9}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 b}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u8230\'c9}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 w}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 1}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\u8230\'c9}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 b}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u8230\'c9}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 a}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u8230\'c9}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  are the strings formed by the concatenation of the tokens. Then, the sorted }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is included in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Notice that }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  will have a maximum of }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  elements, where }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is the number of distinct characters in the string }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 .\par }\pard \ltrpar\qc \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [Sorry. Ignored }{\rtlch\fcs1 \af2 \ltrch\fcs0 \f2\fs24\insrsid10307422 \\begin\{algorithm\} ... \\end\{algorithm\}}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]\par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 This sorting algorithm does }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  comparisons to sort }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  tokens in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . In the worse case, when all characters in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  are distinct (i.e., }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 |), the algorithm to solve Eq. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMeq_permutation \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 6}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is bound by }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 O}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 .}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ))}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  because it runs the sorting algorithm }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  times for all }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , where }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 max}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 |}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )|}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Notice that excluding letters as separators decreases substantially the size of }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . \par Finally, the permutation }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8712\'08}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Q}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  with higher similarity to }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is expressed as a transformation rule as follows. For each token }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 k}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8712\'08}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 q}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , a selection operation }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 S}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 r}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 1}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 r}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ))}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is created, where }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 r}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 1}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is the relative position of the first character of }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 k}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 r}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is the relative position of the last character of }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 k}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  . Then, the set of all selection operations forms a permutation rule }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 P}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . \par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb120\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 3.4  Insertions and Deletions Rule Learner\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 To learn the insertions and deletions in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , we propose an algorithm based on the known }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 longest common substring algorithm (LCS)}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . The purpose of our algorithm is to find all possible alignment of characters between }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . As the characters in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  have the best permutation at this stage, if }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 h}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 k}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , then }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 >}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 h}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 >}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 k}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  or }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 <}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 h}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 <}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 k}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . If }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  are represented in a matrix as shown in Fig. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMfig_permutation \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 1}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ; basically, characters in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that does not align to }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  (zero columns) have to be deleted from }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  to transform it into }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ; and characters in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that does not align to }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  (zero rows) have to be inserted in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  to transform it into }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . \par }\pard\plain \ltrpar\s40\qc \fi300\li0\ri0\sb240\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  \par }\pard\plain \ltrpar\s23\qc \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  \par }\pard\plain \ltrpar\s39\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \par }\pard\plain \ltrpar\qj \fi300\li0\ri0\sb240\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 For example, Fig. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMfig_permutation \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 1}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  shows a matrix representing all character alignments between }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Aug}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  06\\, 2013}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =06/08/13. Those alignments are represented as 1 and the characters that do not align are represented as zero. In this example, the substring \{"Aug ", ", 2"\} (zero columns) have to be deleted from }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ; and \{"/ ", "8/"\} (zero rows) have to be inserted in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . The insertion and deletion rule can be represented as: }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 D}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=\{}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 D}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,1}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 R}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(1\\,}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 zu}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,1)\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 R}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(1\\,}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 zu}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,4))}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 D}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 R}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(1\\,}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ps}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,0)\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 R}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(1\\,}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ps}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,2))\}}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 I}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=\{}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 I}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,1}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )("/"\\, u\\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\, R\\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 u\\s\\do4(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs13\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(1\\, }{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ps}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,0))}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 I}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )("8/"\\, u\\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\, R\\s\\do5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 u\\s\\do4(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs13\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(1\\, }{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ps}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,4)) \}}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , respectively.\par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Given a matrix }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 K}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  of }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u215\'5f}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  where }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )|}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 =|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 |, the LCS finds the longest diagonal in the matrix where }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , 1\u8804\'b2}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u8804\'b2}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and 1\u8804\'b2}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u8804\'b2}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . We consider }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  equal to }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ], if }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  or }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 lowercase}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ])=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 lowercase}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ])}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 .\par Our algorithm starts looking for the longest common substring }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 (lcs)}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  between }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , using LCS. Once the }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 lcs}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 r}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 x}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 y}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is determined, the LCS is applied recursively over the upper and lower matrix }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 K}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=[1\\,1\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 r}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 x}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 K}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 L}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 y}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , respectively. After all }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 lcs}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  are determined, the lines that are not part of a }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 lcs}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , represents the characters in }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that have to be inserted in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and the columns the characters that have to be deleted from }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . This algorithm is bound by the upper bound of the original LCS, which is }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 O}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 n}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 .}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 m}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ).\par Alg. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMalg_relativeposition \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 1}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is used to find the relative position for the insertions and deletions. The set insertions }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 I}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  forms a transformation rule }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\u8594\'5f\\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 I}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\up4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , and the set deletions }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 D}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  forms a transformation rule }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\u8594\'5f\\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 D}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\up4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 _}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . \par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb120\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 3.5  Updates Rule Learner \par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 To learn the updates rules, for each }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 _}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 _}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , a rule }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 r}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ))}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is created, where the relative position }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 r}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  of }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is found using Alg. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMalg_relativeposition \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 1}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , the distance }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=\u964\'5f(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 _}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ])}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , and the RE }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )[}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Any consecutive set of rules }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,\u8230\'c9\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 j}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  that have the same distance and the same }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , are merged in one }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , where }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is defined to }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 +,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Kleene Star}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  of }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 e}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . This produces a set of update rules }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , such that }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 _}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\u8594\'5f\\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\up4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . This algorithm is bound by }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 O}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (|}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 |), due that it has to walk once though the string }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 _}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 d}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  to compute the distance \u964\'5f to }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . \par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 For example, for }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 jack}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 _}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 w}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 .\u8594\'5f}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Jack}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 W}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 .}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , we have }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 llllplp}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ulllsup}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . The algorithm produces 7 rules, i.e, }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid9316407  }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,7}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 R}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (2\\,}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,0)\\,}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,0)}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . The consecutive rules }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,3}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,4}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  have the same distance and RE, then they are replaced by the rule }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 U}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,2}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 R}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (1\\,}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 p}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,\u8722\'5f3)\\,}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 l}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 +}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,0)}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Such a set of rules can transform any string in the form }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ll}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 +}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 plp}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  into }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 ul}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 +}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 slp}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . \par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb120\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 3.6  Discussions\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Table }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMtable_ruleexamples \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 1}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  shows large variety of examples of string transformations: }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\u8594\'5f}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\u8594\'5f}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . The algorithm just described can learn a rule using as example a transformation rule }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ \u936\'5f\\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and produce a correct transformation for any string }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  in this table (i.e.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \charscalex50\insrsid10307422 \~}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\u8594\'5f\\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \u936\'5f\\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs13\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs13\insrsid10307422 \\s\\do3(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs10\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs13\insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs13\insrsid10307422 \\s\\do3(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs10\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs13\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ). \par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 As described before, the rules are learned and applied independently of each other. This avoids the exponential problem of searching for the combination of operations that maximize the coverage over all examples. Obviously, it is impossible to learn a rule with maximal }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Cov}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (\u936\'5f\\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,\u916\'5f\\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 +}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ))}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  for any arbitrary string pair (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ) and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ \u916\'5f\\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 +}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , considering only information in (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ). However, in Sec. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMsec_evaluations \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 5}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , we will show that the rule learner produces high coverage rules over real-world transformation tasks, which can be properly selected to transform correctly an unseen string }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . \par }\pard\plain \ltrpar\s2\ql \li0\ri0\sb240\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel1\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 {\*\bkmkstart BMsec_rulelearner}4{\*\bkmkend BMsec_rulelearner}  Rule Selector Method\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 In this section, we describe our method to tackle the second learning problem. \par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Given a transformation model }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ \u937\'bd(\u916\'5f\\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 +}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ))}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and a pair of string (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 x}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 y}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ), we model the problem of finding a transformation rule }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ \u936\'5f\\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8712\'08}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u937\'bd(\u916\'5f\\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 +}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ))}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , such as }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Validity}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 (\u968\'5f\\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 x}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 y}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )=1}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , as a classification problem. Our training data are the pairs of string }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ (}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\do5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ))}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8712\'08}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u916\'5f\\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 +}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  (observations) and the rules in }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ \u968\'5f\\s\\up(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 G}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 ,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )\\,}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 \\s\\do4(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs13\insrsid10307422 i}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 )}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}{\rtlch\fcs1 \af3 \ltrch\fcs0 \f3\insrsid10307422 \u8712\'08}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u937\'bd(\u916\'5f\\s\\up5(}{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs16\insrsid10307422 +}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ))}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  (categories). Then given a new string }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 x}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , the task is to assign a specific rule (category) to it, based on the features extracted from }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 x}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . We use as a classifier a }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Naive Bayes Classifier}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . During the learning phase, the set of trigrams (3-grams) of the strings }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 v}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , and the frequency of the trigrams of }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 u}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  were used as features. And during the classification phase, the set of trigrams of the string }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 x}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  EQ }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 x}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \\s\\up5(}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\fs16\insrsid10307422 c}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 )}}{\fldrslt }}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , and their frequencies, were used as features.\par As any other classification task, we assume the user can collect a representative and discriminative training sample to obtain a satisfactory performance of this method. We also acknowledge that for other specific transformation tasks may exist other machine learning approaches that perform better. However, in Sec. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMsec_evaluations \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 5}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , we will show that the Naive Bayes Classifier worked greatly, in average,with a proper set of examples is provided.\par }\pard\plain \ltrpar\s2\ql \li0\ri0\sb240\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel1\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 {\*\bkmkstart BMsec_evaluations}5{\*\bkmkend BMsec_evaluations}  Evaluation\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 In this section, we investigate empirically three aspects of our method: the coverage of the rules produced by the rule learner, the accuracy of the rule selector, and the learning time of the rule learner. \par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb120\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 5.1  Data\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 In this investigation, three datasets were constructed based on real-world string transformation tasks. \par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 Book Dataset.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  The first dataset is a collection of book titles from }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Booking Crossing dataset }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_Ziegler_2005_IRL_1060745_1060754 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 13}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ]. We obtained 52690 titles from books records where the titles start with an article (e.g. "The", "La", "El", "An"). Then, we shifted the article to the end of the sentence, after insert a comma and a space, as shown in this example: "Cloud, The" instead of "The Cloud". Consequently, the task was to put the title in the original form, i.e., to shift the article to the beginning of the sentence and to remove the additional comma and space. In this }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 book}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  dataset, the overall task was to learn transformation rules from a limited set of examples. Later those rules were used by the rule selector to transform all titles in the correct conventional form, i.e. }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Cloud}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 The}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \u8594\'5f}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 The}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Cloud}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . \par }{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 Songs Dataset.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  The second dataset was build by selecting all songs of the band REM from Wikipedia pages, in total 184 songs. An example of a song extracted from the Wikipedia page is: }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 "Shiny Happy People" - 3:44}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . In this }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 song}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  dataset, the task was to learn rules that could extract from original Wikipedia string only the name of the song, i.e. "Shiny Happy People" \- 3:44 \u8594\'5f}{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Shiny}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Happy}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 People}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . \par }{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 Dates Datasets.}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  The last dataset is an artificial dataset containing 366 dates in format }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 "month day, year"}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , where }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 month}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is represent by its abbreviated name (e.g. }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Jan}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  02, 2013). The task was to learn rules that could transform these dates to the format }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 "day/month/year"}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , where the }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 month}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is represented by its decimal representation (e.g. 02/01/13), i.e.,  }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 Jan}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  02, 2013\u8594\'5f02/01/13. \par We manually constructed the ground truth for all strings in all datasets. Those datasets and the algorithm are available for download}{\rtlch\fcs1 \af0 \ltrch\fcs0 \cs58\super\insrsid10307422\charrsid9316407 \chftn {\footnote \ltrpar \pard\plain \ltrpar\s54\ql \fi-113\li397\ri0\widctlpar\wrapdefault\faauto\rin0\lin397\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \cs58\super\insrsid10307422\charrsid9316407 \chftn }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  Put github uri here}}}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . As we will discuss next, these three scenarios show the power of our algorithm, which can solve different real transformation tasks, requiring a very limited set of examples. \par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb120\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 5.2  Evaluation Metric \par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 To asses the quality of the rule learner algorithm (i.e. the rule coverage), the }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 maximal coverage}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  was used, which is the minimal number of rules that have to be learned to correctly transform all strings. We evaluated the rule learner with three different configuration of n-grams, in relative position algorithm (Alg. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMalg_relativeposition \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 1}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ): N1 (1-gram), N2 (2-grams) and N3 (3-grams).\par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 To asses the quality of the rule selector algorithm, the }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 accuracy measure}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  was used. It is defined below:\par }\pard\plain \ltrpar\s25\ql \li0\ri0\sb120\sa120\keep\widctlpar\tqc\tx3450\tqr\tx6900\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \tab }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid9316407  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \tab (7)\par }\pard\plain \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Where }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 #correct transformations}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  stands for the number of transformations that the rule selector produces correctly. And }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 #string pairs in ground truth}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  stands for number of strings in the ground truth, i.e. the total number of strings that have to be transformed.\par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb120\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 5.3  Rule Coverage\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Table }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMtable_rulecoverage \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 2}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  shows the maximum coverage per task. It indicates that indeed the rule learner algorithm needs a relatively small number of examples to correctly transform all strings in the ground truth. In the Book, Songs and Dates datasets, N2 requires 157, 2, 12 examples; respectively. This equates to 0.29%, 1.0% and 3.0% of the data; respectively. \par }\pard\plain \ltrpar\s41\qc \li0\ri0\sb240\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs14\insrsid10307422  \par }\pard\plain \ltrpar\s39\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \fs14\insrsid10307422  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs14\insrsid10307422 \par   \par }\pard\plain \ltrpar\qj \fi300\li0\ri0\sb240\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Specially, in the case of the Songs dataset, the algorithm needs only 2 examples. This shows that it can capture the regularity in the data quite precisely. In all configurations (N1, N2 and N3), it performed optimally for Dates dataset, requiring a minimal of 12 examples, to capture exactly the 12 distinct patterns of dates in the ground truth, i.e., the twelve month names and their equivalent decimal representations. Although N1 requires less examples for the Book dataset than N1 and N3; N2 requires less examples in the Songs dataset. As N2 is more discriminative than N1, it is recommended to use it instead of N1.\par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 In total, 157 (N2) examples are necessary to reach maximal coverage in the Book dataset. However, as observed in Fig. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMfig_rulecoverage \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 2}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , a very small set of rules (precisely, 11 rules) covers a large amount of the examples (precisely, 99%). It confirms that the algorithm are effective in learning transformation rules from a few examples. As indicated in this case, with 11 examples, it cover 99% of the data, which is a quite high coverage.\par }\pard\plain \ltrpar\s40\qc \fi300\li0\ri0\sb240\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  \par }\pard\plain \ltrpar\s23\qc \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid9316407  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  \par }\pard\plain \ltrpar\s39\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Figure {\*\bkmkstart BMfig_rulecoverage}2{\*\bkmkend BMfig_rulecoverage}: Rule coverage for the Book dataset using N2.}{\pard\plain \ltrpar\s39\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \v\fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\tc {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 2 Rule coverage for the Book dataset using N2.\tcf102}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb360\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 5.4  Rule Selector Accuracy\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 To verify the rule selector accuracy, examples with maximal coverage was selected for each task. Except the Book task, where only 11 examples were selected with coverage of 99%. As those examples produce rules with 100% coverage (99% for the Book examples), we verify the accuracy of the rule selector in selecting a rule that transforms correctly a new string }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Table }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMtable_bookexamples \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 3}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 , }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMtable_songexamples \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 4}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  and }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMtable_datesexamples \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 5}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  show the examples used to build the rules for the Book, Song, and Dates transformation tasks; respectively. \par }\pard\plain \ltrpar\s41\qc \li0\ri0\sb240\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs14\insrsid10307422  \par }\pard\plain \ltrpar\s39\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \fs14\insrsid9316407  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs14\insrsid10307422 \par }{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs14\insrsid9316407  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs14\insrsid10307422 \par }\pard\plain \ltrpar\qj \fi300\li0\ri0\sb240\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Table }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMtable_results \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 6}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  shows the accuracy of rule selector for each transformation task using the examples described previously. For the Book, Songs and Dates task, the accuracy was 82%, 96%, 100%; respectively. Although, the naive classifier is very sensitive w.r.t the quantity and quality of the examples, particularly when a few examples are provided, it performed satisfactorily and with high accuracy in average. This is due to the quality of the examples provided, which were carefully selected in this investigation. Particularly, in the Book task, the accuracy was a bit lower (82%) than the other cases. Given that the Book examples have maximum coverage, the lower accuracy was due to the features that were not discriminative enough. There are techniques to address the problem of selecting good quality features [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_1183917 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 5}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ], in the literature. A deeper investigation of these methods is an incremental step, which is out of the scope of this paper. The main purpose of this empirical investigation was to show that the rules can be learned independently from a few examples, and an classification method can be use to select the rules afterwards. \par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Concluding, the results demonstrates the feasibility of our algorithm for general string transformations tasks. Basically, with low effort, users without programming knowledge can produce complex string transformations supplying set of a few examples. \par }\pard\plain \ltrpar\s41\qc \li0\ri0\sb240\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs14\insrsid10307422  \par }\pard\plain \ltrpar\s39\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \fs14\insrsid10307422  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \fs14\insrsid10307422 \par   \par }\pard\plain \ltrpar\s3\ql \li0\ri0\sb360\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel2\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 5.5  Learning Efficient\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Finally, we show the linearity of the rule learner algorithm. As noted in Sec. 3, the algorithm is linear which allows it to scale well with the number of examples, considering transformation tasks where a large number of examples is available and necessary. We empirically study the performance of learner algorithm with increasing number of input examples. We use subsets of increasing cardinality drawn from the Book dataset. Fig. }{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BMfig_time \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 3}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  shows the running times for various sample sizes. We observe a linear increase in running times as the number of input examples grows, as expected from our analysis in Sec. 3.\par }\pard\plain \ltrpar\s40\qc \fi300\li0\ri0\sb240\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  \par }\pard\plain \ltrpar\s23\qc \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid9316407  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  \par }\pard\plain \ltrpar\s39\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 Figure {\*\bkmkstart BMfig_time}3{\*\bkmkend BMfig_time}: Learning time varying the sample size for the Book dataset.}{\pard\plain \ltrpar\s39\ql \li0\ri0\sb120\sa120\keep\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24 \ltrch\fcs0 \v\fs24\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\tc {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 3 Learning time varying the sample size for the Book dataset.\tcf102}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \par }\pard\plain \ltrpar\s2\ql \li0\ri0\sb480\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel1\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 {\*\bkmkstart BMsec_relatedwork}6{\*\bkmkend BMsec_relatedwork}  Related Work\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 In this section, we discuss the related work and other methods addressing string transformations.\par }\pard \ltrpar\qj \fi300\li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 Learning Association Rules}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Arasu et. al [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_DBLP_journals_pvldb_ArasuCK09 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 1}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] studied the problem of learning a set of transformation rules given a set of examples matches. In their problem, they assume that a transformation rule maps a sequence of tokens to another sequence of tokens (e.g. 1st Ave. \u8594\'5f First Avenue). Those mappings or associations are then used to transform a string into another. A limitation of their approach is that rules cannot be applied over unseen tokens. For instances, the rule North \u8594\'5f N, cannot be used to transform }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 South}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  into }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 S}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Moreover, their algorithm needs a large number of examples to generate useful rules. Michelson et. al [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_DBLP_conf_icai_MichelsonK09 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 4}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] studied the problem of heterogeneous transformations, which are translations between strings that are not characterized by a single function. E.g. abbreviation, synonyms and acronyms. Addressing the problem of record linkage, Patro et. al [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_DBLP_conf_dexa_PatroW11 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 7}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] proposed an automatic method to extract top-k high quality transformation rules given a set of possibly co-referent record pairs. Tejada et. al [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_DBLP_conf_kdd_TejadaKM02 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 11}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] addressed a similar problem. Although relevant, those transformations are complementary to the class of transformations that we looked at in our work. We looked into transformations that changes the formatting of a string, instead of a mapping based transformation.\par }{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 Learning Candidate Transformations}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Okazaki et. al [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_DBLP_conf_emnlp_OkazakiTAT08 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 6}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] studied the problem of generating candidates string to which a given string }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  is likely to be transformed. They propose a supervised approach that uses sub-string substitution rules as features and score them using an L1 regularized logistic regression model. Then their model selects the best target string }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  based on the probability of a string }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 t}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422  be a transformation to }{\rtlch\fcs1 \ai\af0 \ltrch\fcs0 \i\insrsid10307422 s}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . As they use a discriminative model, they required a large amount of both positive and negative examples. Moreover, the authors state that their model cannot handle changes at phrase/term level, e.g., "estrogen receptor" and "receptor of oestrogen", which we propose to address in our work.\par }{\rtlch\fcs1 \ab\af0 \ltrch\fcs0 \b\insrsid10307422 Learning String Transformations from Examples}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 . Gulwani [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_DBLP_conf_popl_Gulwani11 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 2}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] proposed a grammar-based string transformation language to express syntactic string transformations, Their method aims to synthesize a desired program including loops and conditions, which together with other functions can express a transformation. Although, they designed an efficient algorithm, their method has many performance issues due to the exponential space of transformations that they have to explore. As state by the author, their algorithm works in practice but it is not guaranteed to work for all cases. This method was extended by Singh et. al [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_DBLP_journals_pvldb_SinghG12 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 10}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] to support semantic based transformations. Recently, Wu et. al [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_DBLP_conf_aaai_WuSK12 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 12}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] also proposed a gram-based string transformation learner. Contrarily to those systems, our approach is definitely simpler and can express all transformations listed on their papers, when the right number of examples is provided. It has the advantage to be based on only four solid string operations that can be implemented using the combination of variations of well-known and widely studied string manipulation algorithms (e.g. sorting, longest common substring). Apart from that, it does not suffer of any performance issue, it is linear with the input training size; consequently, it can scale for large string transformation tasks.\par String transformations has been studied in many other domain. For instance, Satta et. al [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_conf_acl_SattaH97 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 9}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ], introduce an original data structure and efficient algorithms that learn some families of transformations that are relevant for part-of-speech tagging and phonological rule systems. Potter\rquote s Wheel [}{\field{\*\fldinst {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 REF BIB_DBLP_conf_vldb_RamanH01 \\* MERGEFORMAT }}{\fldrslt {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 8}}}\sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 ] is a system that propose an interactively transformation strategy for data cleaning. They show the evident need of the user interaction in some transformation tasks. Our algorithm can be easily integrated into more complex tools and string transformation workflows, as in this process proposed by Potter\rquote s Wheel.\par }\pard\plain \ltrpar\s2\ql \li0\ri0\sb240\sa120\keepn\widctlpar\wrapdefault\faauto\outlinelevel1\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 7  Conclusions\par }\pard\plain \ltrpar\qj \li0\ri0\sb60\widctlpar\wrapdefault\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 In this paper, we present a novel algorithm to learn string transformation from examples. The algorithm has a simple but strong foundation in four basic string operations: permutation, insertion, deletion and updates. We demonstrated that these operations can express any string transformation. We introduce an algorithm based on a combination of variations of well-known algorithms for string manipulation. The empirical investigation indicates this algorithm can learn transformation rules that generalizes for a large number of string, even when a limit amount of examples is provided. This algorithm has a vast range of applications and can be used in widely range of string transformation tasks. We provided an implementation in Ruby programming language, which is available for download at GitHub. \par }\pard\plain \ltrpar\s52\ql \li450\ri0\widctlpar\wrapdefault\faauto\rin0\lin450\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid9316407  }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10307422 \par }{\*\themedata 504b0304140006000800000021004b9df618000100001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb6ac3301045f785fe83d0b6d872ba28a5d8cea28f5d1f8bf40306796c8bda23214d42f2f71d3b0e94124217dd08a499b9f7dc51b9de8f83da614cce53a55779a11592f58da3aed29f9b97ec5eabc4400d0c9eb0d2074c7a5d5f5f959b43c0a4649a52a57be6f0604cb23d8e90721f90a4d2fa3802cb35762680fd820ecd6d51dc19eb899138e34943d7e513b6b01d583defe5f94822e35a3d1efb26ab4a430883b3c0026aa6aaa9cb77018fae41f50191df60942ec382803fcf557e596b47cd2fe0ccb7adb3d878bb1d05339f256f16cf33ac11877401f68cc1b28d5c26e740a977219d1cfe94ea1548d619ff27db22760230f3dfd6df000000ffff0300504b030414000600080000002100a5d6a7e7c0000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4fc7060abb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b63095120f88d94fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462a1a82fe353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f7468656d652f7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b4b0d592c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b4757e8d3f729e245eb2b260a0238fd010000ffff0300504b0304140006000800000021009d5c8bbe10070000871d0000160000007468656d652f7468656d652f7468656d65312e786d6cec594f6f1b4514bf23f11d467b6f13274e9a4475aad8b109b469a3d82dea71bc3bf64e33bbb39a1927f10db547242444411ca8c48d03022ab51297f269024550a47e05deccecae77e271e39400153487d63bfb7b6fdefbbd3ff367af5e3b4e183a2442529e3682dae5c5009134e4114d878de076af73692d4052e134c28ca7a4118c890cae6dbefbce55bca162921004f2a9dcc08d20562adb585890210c63799967248577032e12ace0510c1722818f406fc2169616175717124cd300a53801b5b706031a12d4d32a83cd42799bc163aaa41e0899e86ad5c49130d8e8a0a611722c5b4ca043cc1a01cc13f1a31e39560162582a78d10816cd5fb0b07975016fe4424ccd90adc875cc5f2e970b44074b664e31ec9793d63af5f52bdba57e03606a1ad76eb75bed5aa9cf00701882a7d696aace7a67add62c745640f6e7b4eed6e2ca62ddc557f42f4fd9bcde6c3657d6735bac5203b23feb53f8b5c5d5fad6928337208b5f99c2d79b5badd6aa8337208b5f9dc277aeacafd65dbc01c58ca60753681dd04e27d75e42069ced78e16b005f5bcce113146443995d7a8a014fd5ac5c4bf03d2e3a00d04086154d911a67648043c8e21666b42fa89e006f105c796387423935a4e742321434538de0830c43454cf4bd7cf6ddcb674fd0c9fda727f77f3c79f0e0e4fe0f569123b583d36155eac5379ffef1e823f4fb93af5f3cfcdc8f9755fc2fdf7ffcf34f9ff981503e13739e7ff1f8d7a78f9f7ff9c96fdf3ef4c0b704ee57e13d9a10896e9223b4cf1370ccb0e25a4efae27c12bd18d3aac4563a9438c57a168ffeb68a1df4cd3166d8836b1297c13b02da870ff8dee89e637037162395c7dbf1ec7a9c38c05dce59930b2f0bd7f55c159a7ba374e89f5c8caab87d8c0f7d73b770eac4b73dcaa06f529fca564c1c33f7184e151e929428a4dff103423c7cdda5d4e1759786824b3e50e82e454d4cbd94f468dfc9a689d00e4d202e639f81106f879bdd3ba8c999cfeb6d72e822a12a30f318df23cca1f13d3c5238f1a9ece1845509bf8155ec33b23b166115d7960a223d248ca37644a4f4c9dc12e06f25e8d7a175f8c3becbc6898b148a1ef874dec09c5791dbfca015e324f361bb348dabd8f7e501a428467b5cf9e0bbdcad10fd0c71c0e9cc70dfa1c409f7d9dde0361d3a264d1244bf19091d4b68d54e074e68faaa769c4037ceddb9b8760c0df0f9578f3c99f5a636e22d20c157093ba7daef2cdce9a6dbe222a26f7ecfddc6a3748f409a4f2f3c6f5beedb961bfce75beeac7a9eb7d14e7a2bb45dbdbdb19b62b3454e66ee900794b1ae1a3372439a4db2847522eac0a09633a743529e98b2187ee67dddc10d0536324870f521557137c6196cb06b81563294b9eaa144199770b033c35edd1a0f9b74658f852bfac060fb81c46a97477678590f17e782528d596d86e6f0594cb4ac15cc3bd9f2955c29b8fd3a93d5b45173cf5633a69956e7cc56ba0c319c760d064b3661038260db022cafc2f95c4f0d0713cc48a479b76b6f11161385bf2744b9d7d6911847c486c819aeb05933b12b52c85c10404a7942773e364bd680b4b38d3069313b7fe624b95030215997dda96a6269b5b6588a8e1ac1facad24a80429c3582011c49e1679241d0a4deb26136847b9d50099bb567d6a229d289c7ebfeacaac12dc38c8271ca3813526d6319db189a5779a858aa67b2f62fadd475b25d8c0336515fc38ae53548917fcd0a08b51b5a3218905055835d19d1dcd9c7bc13f29122a21b4747a8cf46621f43f88153ed4f4425dc2c9882d60f700da6d936afdcde9a779aeae593c1d971ccb218e7dd525fa3141567e1a6de4a1bcc53c53cf0cd6bbb71eefcaee88abf2857aa69fc3f73452f0770d05f8e740442b8851518e97a6d045ca8984317ca621a7604acfba67740b6c0552abc06f2e12ed8fc2fc8a1fedfd69cd561ca1ace6b6a9f0e91a0b09ca85810b2076dc964df19ca6af9d26355b25c91c9a88ab932b366f7c921613ddd0357750f0e500ca96eba49de060cee74feb9cf7905f5877a8f52ad37a787944ba7ad817f7ae3628b199c3ab597d0f95bf05f9ae859fdacbc112fd6c8aa23fac56497542faac259fcd6d7f3a95ed3847916e0ca5a6b3bd694c74b2b857110c5698f61b0dccf64705d83f43fb0fe511132fb61412fa83dbe0fbd15c17702cb1f82acbea4bb1a64906e90f6571ff63d76d026935665a9cd773e9ab562b1bee08d6a39ef29b2b565f3c4fb9c64979b28773aa7162f92ec9c61876b3b36936a88ece91285a141710e3181315fa4aa1f8d78ff1e047a1baee747cc7e4692193c993ac8f684c9ae3e8fc6f94f26ed826bb34e9f613492a5fb648068745c9c3f4a266c09d94f19c516d9a0b5984eb45270d97768700573bc16b5ab6529bc74b67029616686965d0a9b1b329f02f89095376e7db403bc6db2d66b5d5c05532cfd2b94cd61bc9f32efc9675ecaec41f195817a0dcad4f1ab29cb9902f2a6130f3e450a0c4793aee9bfb0e8d84c3729bbf927000000ffff0300504b0304140006000800000021000dd1909fb60000001b010000270000007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f78277086f6fd3ba109126dd88d0add40384e4350d363f2451eced0dae2c082e8761be9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89d93b64b060828e6f37ed1567914b284d262452282e3198720e274a939cd08a54f980ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd5001996509affb3fd381a89672f1f165dfe514173d9850528a2c6cce0239baa4c04ca5bbabac4df000000ffff0300504b01022d00140006000800000021004b9df618000100001c0200001300000000000000000000000000000000005b436f6e74656e745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6a7e7c0000000360100000b00000000000000000000000000310100005f72656c732f2e72656c73504b01022d00140006000800000021006b799616830000008a0000001c000000000000000000000000001a0200007468656d652f7468656d652f7468656d654d616e616765722e786d6c504b01022d00140006000800000021009d5c8bbe10070000871d00001600000000000000000000000000d70200007468656d652f7468656d652f7468656d65312e786d6c504b01022d00140006000800000021000dd1909fb60000001b01000027000000000000000000000000001b0a00007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d010000160b00000000}{\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d61696e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e}{\*\latentstyles\lsdstimax276\lsdlockeddef0\lsdsemihiddendef1\lsdunhideuseddef1\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdlocked0 heading 1;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdlocked0 heading 2;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdlocked0 heading 3;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdlocked0 heading 4;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdlocked0 heading 5;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdlocked0 heading 6;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9;\lsdunhideused0 \lsdlocked0 toc 1;\lsdunhideused0 \lsdlocked0 toc 2;\lsdunhideused0 \lsdlocked0 toc 3;\lsdunhideused0 \lsdlocked0 toc 4;\lsdunhideused0 \lsdlocked0 toc 5;\lsdunhideused0 \lsdlocked0 toc 6;\lsdpriority39 \lsdlocked0 toc 7;\lsdpriority39 \lsdlocked0 toc 8;\lsdpriority39 \lsdlocked0 toc 9;\lsdunhideused0 \lsdlocked0 footnote text;\lsdunhideused0 \lsdlocked0 header;\lsdunhideused0 \lsdlocked0 footer;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdlocked0 caption;\lsdunhideused0 \lsdlocked0 endnote reference;\lsdunhideused0 \lsdlocked0 endnote text;\lsdunhideused0 \lsdlocked0 List;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdlocked0 Title;\lsdunhideused0 \lsdlocked0 Default Paragraph Font;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority22 \lsdlocked0 Strong;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;\lsdsemihidden0 \lsdunhideused0 \lsdpriority59 \lsdlocked0 Table Grid;\lsdunhideused0 \lsdlocked0 Placeholder Text;\lsdunhideused0 \lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdunhideused0 \lsdlocked0 Revision;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdsemihidden0 \lsdunhideused0 \lsdlocked0 Quote;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdpriority37 \lsdlocked0 Bibliography;\lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;}}{\*\datastore 010001000200000010000000584d4c2e5341585265616465722e3500000000000000000000060000d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff090006000000000000000000000001000000010000000000000000100000feffffff00000000feffffff0000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000500ffffffffffffffffffffffffec69d9888b8b3d4c859eaf6cd158be0f000000000000000000000000ec38f02d1348ce01feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100010000000000}}